This invention relates to data storage systems.
An access to a data storage disk proceeds via a sequence of acts that additively contribute to the time needed to complete the access. The sequence includes acts that physically align a disk""s read-write head with the physical storage volume being accessed and acts that actually transfer data to or from the physically aligned storage volume.
The physical alignment typically involves two movements. One movement is a radial travel of the read-write head that aligns the head with a start track of the storage volume to be accessed. The average time for the head travel is referred to as the seek time. The other movement is a rotation of the disk that aligns the read-write head with a start sector of the storage volume to be accessed. The average time for the disk rotational movement is referred to as the rotational latency time.
The access time for a storage disk is the total time needed to complete the acts of the access. Thus, the access time is a sum of the seek time, the rotational latency time, and the actual time to transfer data. The seek time can however, provide the dominant contribution to the access time for many storage disks. Each contribution to the access time is dynamical and can depend on the state of both the disk and the applications using the disk.
The dynamical nature of the contributions to the access time is illustrated by the seek time. The seek time depends on access patterns for individual storage volumes of the disk. If the access pattern includes many consecutive accesses to the same physical storage volume, the seek time will be small. If the access pattern includes many consecutive accesses to new physical storage volumes, the seek time will be large. Determining the seek time usually requires measurements of access activity data for the physical storage volumes of the disk.
In a first aspect, the invention features a method for checking a swap""s quality. The method includes finding an upper bound for reductions to a disk""s seek time or total access time. The reductions are caused by swapping single storage volumes of the disk, which is in a preselected state, with an external storage volume. The method also includes determining a reduction to the seek time or total access time that is produced by swapping one storage volume of the disk with a selected external storage volume and comparing the determined reduction to the upper bound.
In some embodiments, the act of comparing decides whether the determined reduction is more than a preselected percentage of the upper bound. The method may perform the swap of the one storage volume if the determined reduction is greater than the preselected percentage of the upper bound.
In some embodiments, the upper bound to the reduction results from swapping one of the storage volumes of the disk with an external storage volume which has zero activity.
In some embodiments, the act of finding determines a set of reductions in the seek time or total access time of the disk and identifies the biggest reduction belonging to the set. Each reduction of the set is produced by swapping a storage volume of the disk in the pre-selected state with an external reference storage volume whose activity has a pre-selected value. The pre-selected value may be zero. The biggest reduction of the set determines the upper bound. In determining a set of reductions in the seek time of the disk, of order one simple arithmetic operation may be performed per determined reduction to a seek time or total access time.
In some embodiments, the method swaps the one storage volume with the selected external storage volume if the determined reduction is greater than the preselected percentage of the upper bound.
In a second aspect, the invention features a method of swapping physical storage volumes. The method includes finding a size of a reduction to a seek time or total access time of a disk that is produced by swapping a selected storage volume of the disk with a selected external storage volume. The method also includes performing the swap if the reduction is at least as large as a preselected percentage of a reduction to the seek time or total access time that is produced by swapping an external reference storage volume with a storage volume of the disk.
In some embodiments, the method further includes finding a largest reduction to the seek time or total access time that can be produced by a single swap with the external reference storage volume. In finding a set of reductions to the seek time or total access time, of order one simple arithmetic operation may be performed per reduction to a seek time or total access time found. The external reference storage volume may have zero activity. The swap of the selected storage volume is performed if the associated reduction to the seek time or total access time is at least as large as the pre-selected percentage of the largest reduction.
In some embodiments, the act of finding a largest reduction includes finding a set of reductions to the seek time or total access time and identifying the largest member of the set as the largest reduction to the seek time or total access time. Each reduction of the set is produced by swapping one of the storage volumes of the disk with the external reference storage volume.
In a third aspect, the invention features a program storage device storing a computer executable program of instructions. The executable program causes a computer to perform one of the above-described methods.
In a fourth aspect, the invention provides a system for swapping physical storage volumes. The system includes means for finding a size of a seek time reduction to a physical disk. The reduction is produced by swapping a selected storage volume of the disk with a selected external storage volume. The system also includes means for performing a swap in response to the reduction being at least as large as a preselected percentage of a seek time reduction produced by a swap of an external reference storage volume.
In some embodiments, the means for finding determines a largest reduction to the seek time that can be produced by swapping the external reference storage volume with a single storage volume of the disk. The means for performing does a swap in response to an associated reduction to the seek time being at least as large as the pre-selected percentage of the largest reduction. The reference storage volume may have an activity value of zero.
Other features and advantages of the invention will be apparent from the detailed description and claims.